home *** CD-ROM | disk | FTP | other *** search
/ Commodore Disk User Volume 3 #7 / Commodore_Disk_User_Vol.3_7_1990_-.d64 / screen designer (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  6KB  |  229 lines

  1. 5 rem"[141] screen designer  by william a christie  [158]
  2. 10 [145] a [137] 30,40
  3. 20 a[178]1:[147]"crunch/decr.mc",8,1
  4. 30 a[178]2:[147]"getchar.mc",8,1
  5. 40 [151]55,190:[151]56,47:[156]:[143] end of basic memory=$3000-64
  6. 50 v[178]53248:[151]2040,191:[151]650,128:[151]53280,6:[151]53281,0
  7. 55 [151]1022,0:[143] reset screen memory
  8. 60 [143] poke788,52:rem disable run/stop
  9. 70 base[178]4096[172]4:a[178]ba:[141] 1510:bh[178]hb:bl[178]lb
  10. 80 [129]n[178]12224[164]n[170]63:[151]n,0:[130]
  11. 90 [129]n[178]12224[164]n[170]23:[135]s:[151]n,s:[130]
  12. 100 [131] 255,0,0,129,0,0,129,0,0,129,0,0,129,0,0,129,0,0,129,0,0,255,0,0
  13. 110 [151]v[170]21,0:[153]"load"[163]12)"sclistreprint#en delistsiprint#gnpokeer"
  14. 115 [153][163]12)"tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab("
  15. 116 [153][163]10)"forby william christie"
  16. 120 [153][163]8)"for commodore disk user"
  17. 130 [153]""[163]7)"printf1 :alter background colour"
  18. 140 [153][163]7)"printf2 :alter foreground colour"
  19. 150 [153][163]7)"printf3 :alter character colour"
  20. 160 [153][163]7)"printf5 :substitute character"
  21. 170 [153][163]7)"printf7 :main menu"
  22. 180 tx$[178]"contscreen number (1-255) ?:open":x[178]7:y[178]17:[141]2000
  23. 182 sn[178]s1:sn$[178]s1$:sl[178]s2:[137]280
  24. 280 [153]"load":[151]251,10:[151]252,10:[151]253,0:[151]v[170]21,1:sp[178]35:[151]56325,sp
  25. 290 cr[178]32768:dc[178]33536:[143] crunch/decr
  26. 300 cl[178]51218:[143] clearmid4lines
  27. 310 re[178]51243:[143] returnmid4lines
  28. 320 gc[178]50704:[143] getchar
  29. 330 rc[178]51699:[143] character rom copy
  30. 340 ds[178]51755:[143] delete screen
  31. 360 ls[178]52011:[143] list screen numbers
  32. 362 rn[178]52126:[143] renumber
  33. 365 al[178]52199:[143] alter screen number
  34. 370 [151]v[170]21,1:[158] gc:[143] getchar
  35. 380 [151]781,10:[151]782,1:[151]783,0:[158]65520:[151]v[170]21,0
  36. 390 [153]"(";[201](sn$,sl);") ";"wwaitipe cwaitrunch gwaitet nwaitum lwait swait rwaiten";
  37. 391 [153]"um xwaity"
  38. 400 [153]" vwait dwaitel bwaitgn mwaitem rawaitm copwaity altwait liwaitst mcowaitl12wait"
  39. 410 [161]t$:[139]t$[178]""[167]410
  40. 420 [139] [198](t$)[178]136[167] 410
  41. 422 [139] t$[178]"r" [175][194](1022)[178]1[167]2200
  42. 424 [139] t$[178]"t" [175][194](1022)[178]1[167]2300
  43. 425 [139] t$[178]"c" [167] [151]v[170]21,1:[137] 850
  44. 430 [139] t$[179][177]"o" [167] 440
  45. 431 [137] 433
  46. 432 [161]t$:[139]t$[178]""[167]432
  47. 433 [139]t$[178]"o"[175][194](53270)[179][177]216 [167] [151]53270,216:[158] re:[137]435
  48. 434 [139]t$[178]"o"[175][194](53270)[179][177]200 [167] [151]53270,200:[158] re
  49. 435 [139] t$[178]"1" [167] [151]53282,([194](53282)[175]15)[170]1
  50. 436 [139] t$[178]"2" [167] [151]53283,([194](53283)[175]15)[170]1
  51. 437 [139] [198](t$)[179][177]13[167]432
  52. 438 [137] 370
  53. 440 [139] t$[178]"w" [167] [153]"load":[137]370
  54. 450 [139] t$[178]"n" [167] 610
  55. 460 [139] t$[178]"g" [175] [194](1022)[178]1 [167] 720
  56. 470 [139] t$[178]"p" [167] [158] rc:[137]590
  57. 480 [139] t$[178]"i" [175] [194](1022)[178]1 [167] [158]ls:[141]1700:[153]"load":[137]370
  58. 490 [139] t$[178]"s" [167] 970
  59. 500 [139] t$[178]"b" [167] 1550
  60. 510 [139] t$[178]"l" [167] 1090
  61. 520 [139] t$[178]"v" [175] [194](1022)[178]1[167] 1250
  62. 530 [139] t$[178]"m" [167] 1630
  63. 550 [139] t$[178]"d" [175] [194](1022)[178]1[167] 1750
  64. 555 [139] t$[178]"x" [167] 2400
  65. 560 [139] t$[179][177]"a" [167] 590
  66. 570 [139][194](53272)[178]21 [167] [151]53272,31:[137]590
  67. 580 [151]53272,21
  68. 590 [158] re:[143] returnmin4lines
  69. 600 [137]370
  70. 609 [143] *****set screen number**
  71. 610 y[178]13:x[178]7:tx$[178]"enter screen number :":[141]2000:[151]v[170]21,1
  72. 620 sn[178]s1:sn$[178]s1$:sl[178]s2:[158]re:[137]370
  73. 699 [143] ********get screen******
  74. 720 tx$[178]"which screen number ?":x[178]7:y[178]13:[141]2000
  75. 800 a[178]s1:[141]1510:[151]820,lb:[151]821,hb:[158]re
  76. 810 [158] dc:[139]([194](2)[175]1)[178]0[167] 370
  77. 820 [151]v[170]21,0:[151]781,13:[151]782,1:[151]783,0:[158]65520
  78. 830 [153]"          screen not found!       "
  79. 840 [141]1700:[151]v[170]21,1:[158]re:[137]370
  80. 849 [143] **********crunch********
  81. 850 [139] sn[178]255 [167] [153]"  next screen number>255 -alter number":[137]610
  82. 855 [158] re:[143] returnmin4lines
  83. 860 a[178]sn:[141]1500:[151]820,lb:[151]821,hb
  84. 880 [151]v[170]23,1:[151]v[170]29,1
  85. 890 [158]cr:[139]([194](2)[175]128)[178]0[167]900
  86. 895 [151]v[170]23,0:[151]v[170]29,0:[158]cl:[153][163]9)"out of crunch memory"
  87. 896 [151]v[170]21,0:[137]1630
  88. 900 sn[178]sn[170]1:sn$[178][196](sn):sl[178][195](sn$)[171]1:[151]v[170]23,0:[151]v[170]29,0:[137]370
  89. 950 :
  90. 960 [143] *** save ****
  91. 970 el[178][194](base)[170]1
  92. 980 eh[178][194](base[170]1)
  93. 990 [139] el[178]256[167]el[178]0:eh[178]eh[170]1
  94. 1000 [141]1170:[139] f$[178]""[167]280
  95. 1010 [158]57812f$,d,1:[151]193,bl:[151]194,bh:[143]$4000=base
  96. 1020 [151]174,el:[151]175,eh:[143] end
  97. 1030 [158]62957:[143] save
  98. 1040 [133]"end (y/n)";e$
  99. 1050 [139] e$[178]"n"[167]280
  100. 1060 [128]
  101. 1070 :
  102. 1080 [143] **** load *****
  103. 1090 [141] 1170:[139] f$[178]""[167]280
  104. 1091 [139] f$[178]"$"[167]1900
  105. 1100 [151]147,0:[158]57812f$,d,1:[158]62631
  106. 1110 [139] t$[178]"t"[167] 1140
  107. 1120 [159]15,8,15:[132]15,z1,z$,z2,z3:[160]15
  108. 1130 [153]"cmd"z1;z$;z2;z3:[141]1700
  109. 1140 [151]1022,1:[137]280
  110. 1150 :
  111. 1160 [143] ***get load/save parameters***
  112. 1170 [153]"loaddwaitisk or twaitape   :";
  113. 1180 [161]t$:[139]t$[178]""[167]1180
  114. 1185 [139] [198](t$)[178]13[167][142]
  115. 1190 d[178]1:[139] t$[178]"d"[167] d[178]8:[137]1210
  116. 1200 [139] t$[179][177]"t"[167] 1180
  117. 1210 [153]t$:[133]"enter filename :cmdcmd";f$
  118. 1220 [142]
  119. 1230 :
  120. 1240 [143] **view all/selected screens**
  121. 1250 [151]53280,9:[151]53281,9
  122. 1270 [153]"load"[163]6)"view all/selected screens"
  123. 1280 [153][163]6)"listusrusrusrusrusrusrusrusrusrusrusrusrusrusrusrusrusrusrusrusrusrusrusrusrusrprint"
  124. 1290 tx$[178]"enter start screensys :":x[178]8:y[178]10:[141]2000:s[178]s1
  125. 1300 tx$[178]"enter  end  screensys :":x[178]8:y[178]11:[141]2000:e[178]s1:[153]
  126. 1320 [139] s[177]e[167] 1290
  127. 1330 [153][163]4);:[153]"press 'return' for next screen"
  128. 1340 [153][163]10);:[153]"press 'e' to exit"
  129. 1350 [153][163]6)"press 'c' for first screen"
  130. 1360 [153][163]10)"press 'x' to corect"
  131. 1370 [161]k$:[139]k$[178]""[167]1370
  132. 1380 [139] k$[178]"c"[167]1410
  133. 1390 [139] k$[178]"x"[167]1270
  134. 1400 [137] 1370
  135. 1410 a[178]s:as[178]sn:[153]"load"
  136. 1420 [141] 1510:[151]820,lb:[151]821,hb
  137. 1430 [158] dc:[139] a[178]e[167]sn[178]as:[137]370
  138. 1440 [139] ([194](2)[175]1)[178]1[167]a[178]a[170]1:[137]1420
  139. 1450 [161]t$:[139]t$[178]""[167]1450
  140. 1460 [139] t$[178]"e"[167] sn[178]as:[137]370
  141. 1470 [139] t$[178]"c"[167] 1450
  142. 1480 a[178]a[170]1:[137] 1420
  143. 1490 :
  144. 1500 [143] ****convert to 2 byte val****
  145. 1510 hb[178][181](a[173]256):lb[178]a[171](hb[172]256):[142]
  146. 1520 :
  147. 1530 [143] **initialise screen pointer***
  148. 1540 [143] *****to start of memory*******
  149. 1550 [153][163]9)"onare you sure (y/n)wait"
  150. 1560 [161]y$:[139]y$[178]""[167]1560
  151. 1570 [139] y$[178]"n"[167] [158] re:[137]370
  152. 1580 [139] y$[179][177]"y"[167]1560
  153. 1590 [153][163]16)"o.k."
  154. 1600 [141]1700:[158] re:[151]1022,0:[137]370
  155. 1610 :
  156. 1620 [143] ****print memory used****
  157. 1630 [139] [194](1022)[178]0[167]l[178]ba:[137]1650
  158. 1640 l[178][194](ba)[170][194](ba[170]1)[172]256
  159. 1650 [153][163]5)"next screen at"l"($";
  160. 1660 l[178]l[173]4096:[129]j[178]1[164]4:l%[178]l:l$[178][199](48[170]l%[171](l%[177]9)[172]7)
  161. 1670 [153]l$;:l[178]16[172](l[171]l%):[130]:[153]")":[141] 1700:[158] re:[137]370
  162. 1680 :
  163. 1690 [143] *****wait for keypress****
  164. 1700 [129]t[178]1[164]500:[130]:[151]198,0
  165. 1710 [161]r$:[139]r$[178]""[167]1710
  166. 1720 [142]
  167. 1730 :
  168. 1740 [143] *****delete screen****
  169. 1750 x[178]3:y[178]13:tx$[178]"delete which screen(s) :":[141]2100
  170. 1760 a[178][197](a$):[139] a[178]13 [176] a[178]0 [167] [158]re:[137]370
  171. 1770 la[178][195](a$):[129]n[178]1[164]la:[139] [202](a$,n,1)[178]"-"[167]1790
  172. 1780 [130]:n1[178]a:n2[178]a:[137]1820
  173. 1790 n1[178][197]([202](a$,1,n[171]1))
  174. 1800 n2[178][197]([202](a$,n[170]1,[195](a$)[171]n))
  175. 1810 n[178]la:[139] n2[178]0[167]n2[178]sn[171]1:[143] "num-"
  176. 1820 [129]n[178]n1[164]n2:a[178]n:[141]1510:[151]820,lb:[151]821,hb:[158]ds:[130]:[158]re:[137]370
  177. 1828 :
  178. 1898 :
  179. 1899 [143] ****read disk directory*****
  180. 1900 [159]1,8,0,"$"
  181. 1905 [161]#1,z$,z$
  182. 1910 [161]#1,z$,z$,z$,z$
  183. 1920 [139] st [167] [160] 1:[141]1700:[137]370
  184. 1924 [161]#1,z$:[139]z$[178]""[167][153]:[137]1910
  185. 1930 [139] z$[178][199](34)[167]q[178][168] q
  186. 1950 [139] q [167] [153]z$;
  187. 1960 [137] 1924
  188. 1998 :
  189. 1999 [143] ****get numeric input*****
  190. 2000 [151]781,y:[151]782,0:[151]783,0:[158]65520:[151]v[170]21,0:[151]650,0
  191. 2010 [153]"                                       ":tt$[178]""
  192. 2020 [151]781,y:[151]782,x:[151]783,0:[158]65520:[153]tx$;:[139]f[178]1[167][142]
  193. 2030 [161]t$:[139]t$[178]""[167]2030
  194. 2035 [139] t$[178]"_"[167] 2000
  195. 2040 [139] [198](t$)[178]13 [167] 2090
  196. 2060 [139] [198](t$)[179]48 [176] [198](t$)[177]57 [167]2030
  197. 2070 [139] [195](tt$)[178]6 [167]2000
  198. 2080 tt$[178]tt$[170]t$:[153]t$;:[137]2030
  199. 2090 s1[178][197](tt$):[139] s1[177]255 [176] s1[179]1 [167]2000
  200. 2093 s1$[178][196](s1):s2[178][195](s1$)[171]1:[151]650,128:[142]
  201. 2098 :
  202. 2099 [143] *****get string input******
  203. 2100 f[178]1:a$[178]"":[141] 2000
  204. 2110 [161]t$:[139]t$[178]""[167]2110
  205. 2115 t[178][198](t$)
  206. 2120 [139] t$[178]"_" [167] 2100
  207. 2130 [139] t[178]13 [167] f[178]0:[151]650,128:[142]
  208. 2135 [139] t[177]47 [175] t[179]58 [176] t$[178]"-" [167] 2150
  209. 2140 [137]2110
  210. 2150 a$[178]a$[170]t$:[139][195](a$)[179]12[167][153]t$;:[137]2110
  211. 2160 [137]2100
  212. 2198 :
  213. 2199 [143] *****renumber*****
  214. 2200 tx$[178]"renumber increment :":x[178]7:y[178]13:[141]2000
  215. 2210 [151]695,s1:[158]rn:[158]re:[137]370
  216. 2298 :
  217. 2299 [143] ****alter screen number***
  218. 2300 tx$[178]"target screen number :":x[178]5:y[178]12:[141]2000:a[178]s1:[141]1510
  219. 2310 [151] 820,lb:[151]821,hb
  220. 2320 tx$[178]"new screen number    :":x[178]5:y[178]13:[141]2000:a[178]s1:[141]1510
  221. 2330 [151] 695,lb:[151]696,hb
  222. 2340 [158] al:[139]([194](2)[175]1)[178]0[167][158]re:[137]370
  223. 2350 [158]re:[137]820
  224. 2390 :
  225. 2391 [143] ****print crsr co-ords***
  226. 2400 a[178]1024[170][194]($02b2)[170]40[172][194]($02b3):[141]1510
  227. 2405 f[178]1:tx$[178]"hb=":x[178]12:y[178]12:[141]2000:[153]hb;"lb=";lb
  228. 2410 [141]1700:[158]re:f[178]0:[137]370
  229.